package com.garmin.tw.garminpcsync.common.domain.xmlrpc;

import java.io.Serializable;

/**
 * Do MyGarmin Authentication
 * @author HsiehHere
 *
 */
public class AuthResult implements Serializable {
	/**
	 * 
	 */
	private static final long serialVersionUID = 3539663381300837235L;

	private Integer returnCode = -1;
	
	private String email;
	
	private String name;
	
	private String gender;
	
	private String birthday;
	
	private String phoneNo;
	
	private String cityCode;
	
	private String country;
	
	private String addressId;
	
	private String address;
	
	/**
	 * Gets the return code of this user, and only in following list:<br>
	 * <ul>
	 * <li> 1: Success<br>
	 * <li>11: No Such Account<br>
	 * <li>12: Incorrect Password<br>
	 * <li>13: Account Locked<br>
	 * <li>14: Wrong Device Owner<br>
	 * <li>15: Device not registered<br>
	 * <li>21: Cannot find the ESN<br>
	 * <li>22: Not Supported Device GPN<br>
	 * <li>-1: Error<br>
	 * <li>-2: Missing Required Parameters<br>
	 * @return the return code of this user
	 */
	public Integer getReturnCode() {
		return returnCode;
	}

	/**
	 * Sets the return code of this user.
	 * @param returnCode
	 */
	public void setReturnCode(Integer returnCode) {
		this.returnCode = returnCode;
	}
	
	/**
	 * Gets the email address of this user.
	 * @return the email address of this user
	 */
	public String getEmail() {
		return email;
	}

	/**
	 * Sets the email address of this user.
	 * @param email
	 */
	public void setEmail(String email) {
		this.email = email;
	}
	
	/**
	 * Gets the full name of this user.
	 * @return the full name of this user
	 */
	public String getName() {
		return name;
	}

	/**
	 * Sets the full name of this user.
	 * @param name
	 */
	public void setName(String name) {
		this.name = name;
	}
	
	/**
	 * Gets the gender of this user.
	 * @return the gender of this user
	 */
	public String getGender() {
		return gender;
	}

	/**
	 * Sets the gender of this user.
	 * @param gender
	 */
	public void setGender(String gender) {
		this.gender = gender;
	}

	/**
	 * Gets the birthday of this user.
	 * @return the birthday of this user
	 */
	public String getBirthday() {
		return birthday;
	}

	/**
	 * Sets the birthday of this user.
	 * @param birthday
	 */
	public void setBirthday(String birthday) {
		this.birthday = birthday;
	}

	/**
	 * Gets the phone number of this user.
	 * @return the phone number of this user
	 */
	public String getPhoneNo() {
		return phoneNo;
	}

	/**
	 * Sets the phone number of this user.
	 * @param phoneNo
	 */
	public void setPhoneNo(String phoneNo) {
		this.phoneNo = phoneNo;
	}

	/**
	 * Gets the city code of this user, and only in following list:<br>
	 * <ul>
	 * <li>KeelungCity<br>
	 * <li>TaipeiCity<br>
	 * <li>NewTaipeiCity<br>
	 * <li>TaoyuanCounty<br>
	 * <li>HsinchuCity<br>
	 * <li>HsinchuCounty<br>
	 * <li>MiaoliCounty<br>
	 * <li>TaichungCity<br>
	 * <li>TaichungCounty<br>
	 * <li>ChanghuaCounty<br>
	 * <li>NantouCounty<br>
	 * <li>YunlinCounty<br>
	 * <li>ChiayiCity<br>
	 * <li>ChiayiCounty<br>
	 * <li>TainanCity<br>
	 * <li>TainanCounty<br>
	 * <li>KaohsiungCity<br>
	 * <li>KaohsiungCounty<br>
	 * <li>PingtungCounty<br>
	 * <li>TaitungCounty<br>
	 * <li>HualienCounty<br>
	 * <li>YilanCounty<br>
	 * <li>PenghuCounty<br>
	 * <li>KinmenCounty<br>
	 * <li>LienchiangCounty<br>
	 * </ul>
	 * @return the city code of this user
	 */
	public String getCityCode() {
		return cityCode;
	}

	/**
	 * Sets the city code of this user
	 * @param cityCode
	 */
	public void setCityCode(String cityCode) {
		this.cityCode = cityCode;
	}

	/**
	 * Gets the country of this user. Default as 'Taiwan' (Case sensitivity).
	 * @return the country of this user
	 */
	public String getCountry() {
		return country;
	}

	/**
	 * Sets the country of this user.
	 * @param country
	 */
	public void setCountry(String country) {
		this.country = country;
	}

	/**
	 * Gets the address id of this user.
	 * @return the address id of this user
	 */
	public String getAddressId() {
		return addressId;
	}

	/**
	 * Sets the address id of this user.
	 * @param addressId
	 */
	public void setAddressId(String addressId) {
		this.addressId = addressId;
	}

	/**
	 * Gets the address of this user.
	 * @return the address of this user
	 */
	public String getAddress() {
		return address;
	}

	/**
	 * Sets the address of this user.
	 * @param address
	 */
	public void setAddress(String address) {
		this.address = address;
	}

	public String toString() {
		return "[email:" + this.email + ", name:" + this.name + ", gender:"
				+ this.gender + ", birthday:" + this.birthday + ", phoneNo:"
				+ this.phoneNo + ", cityCode:" + this.cityCode + ", country:"
				+ this.country + ", addressId:" + this.addressId + ", address:"
				+ this.address + "]";
	}

}
